package locacao.negocio.bo;

import java.sql.Connection;

import locacao.integracao.dao.RentACarPST;
import locacao.negocio.to.ClienteTO;
import locacao.negocio.to.RentACarTO;


public class ClienteBO {
	
	private RentACarTO rentACarTO;
	private RentACarPST rentACarPST;
	

	public ClienteBO() {
		rentACarTO = new RentACarTO();
		rentACarPST = new RentACarPST();
	}

	
	public void addCliente(Integer idCliente, Integer idPessoa, String cnh){
		try {
			ClienteTO cliente = rentACarTO.getCliente(idCliente, idPessoa, cnh);
			rentACarPST.addOrUpdateCliente(cliente);
		} catch (Exception e) {
			System.out.println("Log Erro: " + e.getMessage());
		}
	}

	
	public void updateCliente(Integer idCliente, Integer idPessoa, String cnh){
   
		try {
			ClienteTO cliente = rentACarTO.getCliente(idCliente, idPessoa, cnh);
			rentACarPST.addOrUpdateCliente(cliente);
		} catch (Exception e) {
			System.out.println("Log Erro: " + e.getMessage());
		}	
	}
	
	
	public void excludeCliente(int idCliente){
		try {
			ClienteTO cliente = rentACarTO.getCliente(idCliente);
			rentACarPST.excludeCliente(cliente);	
		} catch (Exception e) {
			System.out.println("Log Erro: " + e.getMessage());
		}
	}
	
    public String[] getInfoClientes(){
    	return rentACarPST.getInfoClientes();

    }

    
    public String[] getPesquisaClientes(Integer id){
    	try {
    		return rentACarPST.findClienteById(id);
	    } catch (Exception e) {
			System.out.println("Log Erro: " + e.getMessage());
			return null;
		}
    }
    

    public Connection gerarRelatorioClientes(){
    	return rentACarPST.getInstance().getConn().getConnection();
    }
	
}
